From d736e8baf9cbda017f738b5c5dcbf71f0713b4bc Mon Sep 17 00:00:00 2001 From: Lars Uebernickel Date: Wed, 4 Dec 2013 19:45:30 +0100 Subject: [PATCH] GtkMenuItem: only set 'separator' class on the separator line To make the separator line distinguishable from the widget's normal border from css. https://bugzilla.gnome.org/show_bug.cgi?id=719861 --- gtk/gtkmenuitem.c | 10 ++++++++++ gtk/gtkseparatormenuitem.c | 4 ---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/gtk/gtkmenuitem.c b/gtk/gtkmenuitem.c index e6430db1e5..61843f7855 100644 --- a/gtk/gtkmenuitem.c +++ b/gtk/gtkmenuitem.c @@ -987,6 +987,9 @@ gtk_menu_item_real_get_height (GtkWidget *widget, gboolean wide_separators; gint separator_height; + gtk_style_context_save (context); + gtk_style_context_add_class (context, GTK_STYLE_CLASS_SEPARATOR); + gtk_widget_style_get (widget, "wide-separators", &wide_separators, "separator-height", &separator_height, @@ -1007,6 +1010,8 @@ gtk_menu_item_real_get_height (GtkWidget *widget, if (nat_height % 2 == 0) nat_height += 1; } + + gtk_style_context_restore (context); } accel_width = 0; @@ -1696,6 +1701,9 @@ gtk_menu_item_draw (GtkWidget *widget, gboolean wide_separators; gint separator_height; + gtk_style_context_save (context); + gtk_style_context_add_class (context, GTK_STYLE_CLASS_SEPARATOR); + gtk_widget_style_get (widget, "wide-separators", &wide_separators, "separator-height", &separator_height, @@ -1712,6 +1720,8 @@ gtk_menu_item_draw (GtkWidget *widget, y + padding.top, x + w - padding.right - 1, y + padding.top); + + gtk_style_context_restore (context); } GTK_WIDGET_CLASS (gtk_menu_item_parent_class)->draw (widget, cr); diff --git a/gtk/gtkseparatormenuitem.c b/gtk/gtkseparatormenuitem.c index da72129706..938ca21518 100644 --- a/gtk/gtkseparatormenuitem.c +++ b/gtk/gtkseparatormenuitem.c @@ -51,10 +51,6 @@ gtk_separator_menu_item_class_init (GtkSeparatorMenuItemClass *class) static void gtk_separator_menu_item_init (GtkSeparatorMenuItem *item) { - GtkStyleContext *context; - - context = gtk_widget_get_style_context (GTK_WIDGET (item)); - gtk_style_context_add_class (context, GTK_STYLE_CLASS_SEPARATOR); } /** -- 2.30.2